Relevant multimedia advertising targeted based upon search query

ABSTRACT

A facility for processing a search query is described. The facility identifies one or more items that satisfy the query, at least one of which is a media sequence. For each identified media sequence, the facility identifies an advertising message based upon the contents of the query. In response to the query, the facility returns a search result that indicates the identified items. When one of the identified media sequences is selected in the search result, the selected media sequence is provided in conjunction with the advertising message identified for it.

CROSS-REFERENCE TO RELATED APPLICATION

The present application claims the benefit of U.S. Provisional PatentApplication No. 60/585,563, filed Jul. 2, 2004, which is herebyincorporated by reference in its entirety.

TECHNICAL FIELD

The described technology is directed to the field of electronicadvertising.

BACKGROUND

Media sequences of various kinds are available to users from varioussources via the World Wide Web (“the web”). As examples, a user mayaccess an audio sequence containing a song, a lecture, or a radioprogram; a video sequence containing a sports contest or silent-moviescene; or an audio/video sequence containing a movie, music video,television program, or news report.

Because the cost can be high for providing the storage and bandwidthresources needed to make media sequences available via the web, somemedia sequence providers sell advertising to be included in mediasequences accessed via the web to defray these costs. In one commonconventional approach, providers of media sequences select for eachprimary media sequence they make available an advertising message whosesubject is similar to the subject of the primary media sequence, andwhose media type is the same as the primary media sequence. For example,to a primary media sequence that is an audio/video news report about ahurricane in the Bahamas, the media sequence provider may attach anaudio/video advertisement for a weather information service.

While this conventional approach may result in at least modestadvertising revenue, it has the disadvantage that it causes the sameadvertising message to be shown to every user accessing the primarymedia sequence. Where the users accessing a particular primary mediasequence have divergent interests, such “blanket” advertising may beless productive.

Accordingly, an approach that permitted advertising messages attached tomedia sequences to be more specifically targeted to the users accessingthe video sequences would have significant utility.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a high-level block diagram showing a typical environment inwhich the facility operates.

FIG. 2 is a flow diagram showing steps typically performed by thefacility in order to process a query.

FIG. 3 is a data structure diagram showing sample contents of anadvertising message information table used by the facility in someembodiments to select advertising messages based upon query contents.

FIG. 4 is a display diagram showing sample contents of a displaygenerated by the facility in which still images from selectedadvertising messages are displayed alongside the media sequence.

DETAILED DESCRIPTION

A software facility for selecting targeted advertising messages fordeployment with media sequences (“the facility”) is provided. Thefacility operates in connection with a multimedia search engine, such asthe multimedia search engines described in U.S. patent application Ser.No. 09/878,866 filed Jun. 11, 2001; U.S. patent application Ser. No.09/878,876 filed Jun. 11, 2001; U.S. patent application Ser. No.09/876,941 filed Jun. 8, 2001; U.S. patent application Ser. No.09/876,925 filed Jun. 8, 2001; U.S. patent application Ser. No.10/432,316 filed May 21, 2003; U.S. patent application Ser. No.10/432,258 filed May 21, 2003; U.S. patent application Ser. No.10/432,306 filed May 21, 2003; U.S. patent application Ser. No.10/432,388 filed May 21, 2003; U.S. patent application Ser. No.10/415,021 filed Apr. 24, 2003; U.S. patent application Ser. No.10/415,216 filed Apr. 24, 2003; and U.S. patent application Ser. No.10/415,210 filed Apr. 24, 2003, each of which is hereby incorporatedherein by reference in its entirety. When a user submits a query made upof search terms to a multimedia search engine, the query is used for twopurposes: (1) to generate a search result containing controls such aslinks that can be used to download and/or render media sequencessatisfying the query; and (2) to select one or more media sequenceadvertising messages to be deployed with the media sequences satisfyingthe query when downloaded and/or rendered. In various embodiments, thefacility deploys the selected advertising messages in a variety of ways,including (1) inserting the advertising message into, or “attaching itto,” the media sequences that satisfy the query, or (2) while a mediasequence satisfying the query is being downloaded and/or rendered,displaying still image thumbnails of the selected advertising messagesthat the user may activate in order to view the selected advertisingmessages. For example, where a music video media sequence for the songHollywood by the artist Madonna appears in the search result for thequery “Madonna,” the facility may insert an advertising message forMadonna's newest album into the music video or display thumbnail forsuch advertising message alongside the music video. On the other hand,when the music video appears in the search result for the query“Hollywood,” the facility may instead deploy the music video with anadvertising message for Hollywood tourist attractions. By selecting anddeploying an advertising message with media sequences in some or all ofthe ways described above, the facility enables a media sequence providerto obtain additional revenue from presenting an advertising messagelikely to be relevant to the user performing the search.

FIG. 1 is a high-level block diagram showing a typical environment inwhich the facility operates. The block diagram shows several clientcomputer systems, such as client computer systems 110, 120, and 130.Each of the client computer systems has a web client computer programthat a user of the client computer system can use to browse the WorldWide Web, such as web clients 111, 121, and 131. Such web clientstypically allow their users to submit queries to multimedia searchengines, and play media sequences listed in search results produced inresponse to those queries. The client computer systems are connected viathe Internet 140 to a server computer system 150 hosting the facility.Those skilled in the art will recognize that client computer systemscould be connected to the server computer system by networks other thanthe Internet, however.

The server computer system 150 contains a memory 160. The memory 160preferably contains the facility 161, comprising one or more programs162, as well as data 163. Data 163 typically includes data relatingsingle or multi-word search terms to advertising messages of one or moremedia sequence types. Such data may reflect the results of various kindsof advertising message sales techniques, such as auctions or outrightpurchase of particular search terms by advertisers or theirrepresentatives. The memory preferably further contains a web servercomputer program 164 for delivering web pages in response to requestsfrom web clients. While items 161-164 are preferably stored in memorywhile being used, those skilled in the art will appreciate that theseitems, or portions of them, maybe be transferred between memory and apersistent storage device 172 for purposes of memory management and dataintegrity. The server computer system further contains one or morecentral processing units (CPU) 171 for executing programs, such asprograms 161-164, and a computer-readable medium drive 173 for readinginformation or installing programs such as the facility fromcomputer-readable media, such as a floppy disk, a CD-ROM, or a DVD.

While various embodiments of the facility are described in terms in theenvironment described above, those skilled in the art will appreciatethat the facility may be implemented in a variety of other environmentsincluding a single, monolithic computer system, as well as various othercombinations of computer systems or similar devices connected in variousways. In particular, the facility may interact with users via a widerange of portable and/or wireless user interface devices, such ascellular telephones, pagers, personal digital assistants, etc.

FIG. 2 is a flow diagram showing steps typically performed by thefacility in order to process a query. In step 201, the facility receivesthe query. In step 202, the facility generates a set of media sequencesthat is responsive to the query. In some embodiments, the facilityperforms step 202 using multimedia search engine techniques described inone or more of the patent applications listed above. In step 203, thefacility selects one or more advertising messages based upon thecontents of the query. The selected advertising messages may includeadvertising messages of one or more media types, and/or media sequencesrelating to one or more different subjects associated with contents ofthe query.

FIG. 3 is a data structure diagram showing sample contents of anadvertising message information table used by the facility in someembodiments to select advertising messages based upon query contents.The advertising message information table 300 is made up of rows, suchas rows 301-303, each corresponding to a different combination of anadvertising message with one or more search terms used to select theadvertising message. Each row contains information in the followingcolumns: a search terms column 311 containing one or more search termsassociated with the advertising message; a media type column 312indicating a media type of the advertising message; an advertiser column313 containing identifying information for the advertiser on whosebehalf the advertising message will be presented; a media address column314 containing an address from which the advertising message mediasequence may be retrieved; and a message id column 315 containing anidentifier for the advertising message that may be used to maintainpresentation statistics for the advertising message, bill the advertiserfor presenting the advertising message, etc. For example, row 302indicates that an avi advertising message for GMC having identifier9128314 and available from media address www.mediahost.com/gmc0083.avimay be selected for attachment to media sequences included in a searchresult produced for a search query containing the search term “GeneralMotors.”

The facility typically identifies rows of the advertising messageinformation table that in the search terms column contains search termsthat match search terms in the query. In some cases, the facilityfurther seeks to match the media type of selected advertising messageseither directly to the media type of each of the principle mediasequences, or to a group of media types that includes the media type ofthe principle media sequence, such as a group of audio/video mediasequence media types, or a group of media sequence media types supportedby a particular media viewer program, etc. In some embodiments, thefacility selects the advertising messages associated with all rows ofthe advertising message information table whose search terms match thequery. In some embodiments, the facility selects the advertisingmessages associated with the rows of the advertising message informationtable whose search terms most significantly match the query.

While FIG. 3 shows a table whose contents and organization are designedto make them more comprehensible by a human reader, those skilled in theart will appreciate that actual data structures used by the facility tostore this information may differ from the table shown, in that they,for example, may be organized in a different manner; may contain more orless information than shown; may be compressed and/or encrypted; etc.

Returning to FIG. 2, in some embodiments, in step 203, the facilityemploys additional information to select advertising messages that areas relevant as possible to the user. Such additional information mayinclude profile or preference information established for the user;metadata associated with one or more of the media sequences in the setgenerated in step 202; information provided by the advertiser or adesignee of the advertiser; instructions to manually override theadvertising messages selected for particular queries, query terms,resulting media sequences, or groups of resulting media sequences, suchas those issued by the advertiser using campaign management software;etc.

In steps 204-206, the facility loops through each media sequence in theset generated in step 202. In step 205, the facility generates a linkthat causes one of the advertising messages selected in step 203 to bepresented in conjunction with the media sequence when the link isdereferenced. This advertising message is generally of a media sequencetype that is either the same as, or otherwise compatible with the mediasequence type of the media sequence. The advertising message may bechosen based upon information associated with the media sequence, suchas metadata attributed to the media sequence. In some cases, thegenerated link causes more than one of the selected advertising messagesto be presented in conjunction with the media sequence.

In some embodiments, the facility generates the link in step 205 in amanner that causes the selected advertising message to be attached tothe media sequence. The generated link may cause the selectedadvertising message to be presented in various positions relative to themedia sequence, such as before the media sequence, after the mediasequence, during the media sequence, or throughout the media sequence orportions of the media sequence. Table 1 below shows sample contents fora link generated by the facility in step 205.

TABLE 1 http://sponsoredvideo.aol.com/play?content=www.varchive.net/sloane_speech.avi? ad=www.mediahost.com/gmc00083.aviThe portion of the sample link before the first question mark directs arequest to a server capable of concatenating one or more advertisingmessages with a media sequence. The portion of the sample link betweenthe first and second question marks identifies the media sequence to theserver, while the portion after the second question mark identifies theadvertising message to the server. When the server receives thisrequest, it retrieves both the advertising message and the mediasequence, concatenates them, and serves the concatenated result to theclient. In some embodiments, the facility constructs the link in such away as to direct the request to a server for the advertising messagethat is capable of retrieving and concatenating the media sequence, or aserver for the media sequence that is capable of retrieving andconcatenating the advertising message. In some embodiments, the facilityencodes the contents of the link to make it more difficult or impossibleto identify the URL of the advertising message and/or the media sequencewithout possession of data stored on the server. For example, as shownbelow in Table 2, the parameters containing the URLs for the mediasequence in the advertising message may be replaced with numerical orother identifiers that are mapped to the corresponding URLs on theserver.

TABLE 2http://sponsoredvideo.aol.com/play?contentid=2306022&adid=9235255

In some embodiments, the facility encrypts the media sequence andadvertising message parameters such that they can be decrypted using akey stored on the server, as shown below in Table 3.

TABLE 3 http://sponsoredvideo.aol.com/play?d098sdgds4o8sgdog84h4e4kjh

In some embodiments, the link is constructed to point to a custom mediametafile, such as an .asx file, hosted by the facility. Sample contentsfor such an .asx file corresponding to the example shown in Table 1 areshown below in Table 4.

TABLE 4 ref1=www.mediahost.com/gmc00083.aviref2=www.varchive.net/sloane_speech.avi

In some embodiments, in step 205, the facility further causes visualinformation identifying a provider of the media sequence to bedisplayed, such as between the display of the media sequence and thedisplay of the advertising message.

In some embodiments, the facility constructs the link in step 205 insuch a way as to cause the client to display the media sequence withthumbnail still images for one or more selected advertising messagealongside. FIG. 4 is a display diagram showing sample contents of adisplay generated by the facility in which still images from selectedadvertising messages are displayed alongside the media sequence. Thediagram shows a page 400, such as a dynamically generated page, to whichthe link generated in step 205 points. The page includes an embeddedmedia player 410, comprising a display pane 411 for displaying mediasequences, as well as controls 412 for controlling the display of mediasequences. When the page is loaded, the media sequence with which thelink to the page is associated is played in the display pane 411 of theembedded media player. At the same time, advertising message thumbnailsare displayed at thumbnail positions 421-423 near the embedded mediaplayer. The user can activate an advertising message thumbnail, such asby clicking it or hovering the mouse cursor over it. In response, thepage displays the advertising message associated with the advertisingmessage thumbnail. This advertising message may be displayed in avariety of locations, including in-place in its thumbnail position, inthe embedded media player 410 in which the media sequence is displayed,or in a second embedded media player that is opened elsewhere in thepage, such as in the portion of the page occupied by the thumbnailpositions.

In step 206, if additional media sequences in the set remain to beprocessed, then the facility continues in step 204 to process the nextmedia sequence in the set, else the facility continues in step 207. Instep 207, the facility generates a query result containing the linksgenerated in step 205. In step 208, the facility replies to the queryreceived in step 201 with the query result generated in step 207. Afterstep 208, the facility continues in step 201 to receive the next query.

Those skilled in the art will appreciate that the steps shown in FIG. 2may be altered in a variety of ways. For example, the order of the stepsmay be rearranged; substeps may be performed in parallel; shown stepsmay be omitted, or other steps may be included; etc.

In some embodiments, rather than deploying an advertising message with aprimary media sequence by its construction of a link to the primarymedia sequence that is included in the search result, the facilityinstead includes either the advertising message itself or a link to theadvertising message within a version of the primary media sequence thatis served to the user who receives the search result. In theseembodiments, where the user saves a copy of the served media sequence,the advertising message can be presented to the user each time the userplays the saved media sequence.

In some embodiments, rather than selecting an advertising message todeploy with a primary media sequence before generating the searchresult, the facility instead defers selection of an advertising messageto deploy until after the user has selected the media sequence from thesearch result for retrieval. For example, the link to a media sequenceincluded in the search result may include information usable by thefacility to select an advertising message, such as search termscontained in the query. Table 5 below shows a link similar to the linkof Table 2 in which the advertising message identifier parameter hasbeen replaced with a parameter indicating the query string “generalmotors.”

TABLE 5 http://sponsoredvideo.aol.com/play?contentid=2306022&query=general%20motorsFurther, in some embodiments, the facility stores information inside theprimary media sequence that causes a media player program playing themedia sequence to call the facility for selection and deployment of anadvertising message each time the media sequence is played. This“late-binding” of advertising messages can enable the facility to selecteven the most recently-introduced advertising messages. Indeed, it cancause advertising messages to be presented that are not available whenthe search result is generated, or even when the media sequence isserved.

It will be appreciated by those skilled in the art that theabove-described facility may be straightforwardly adapted or extended invarious ways. For example, the facility may be used with media sequencesand/or advertising messages of various media sequence types. Further,the facility may use a variety of mechanisms to attach advertisingmessages to media sequences. Additionally, the facility may attachadvertising messages to media sequences made available in a variety offorms, such as streaming or downloaded forms. Also, the facility may beimplemented in conjunction with a variety of other multimedia searchingand/or advertising functionality. Further, the facility may be used byvarious combinations of parties, including advertisers, advertisingagencies, electronic publishers, intermediaries of various types, etc.Advertising revenue may be collected from various combinations of theseparties, and distributed to various combinations of these parties. Whilethe foregoing description makes reference to preferred embodiments, thescope of the invention is defined solely by the claims that follow andthe elements recited therein.

We claim:
 1. A method in a computing system for processing a searchquery, the computing system having a processor and memory, the methodcomprising: identifying one or more media sequences satisfying thequery; identifying for each identified media sequence an advertisingmessage based on metadata associated with the media sequence;generating, for each identified media sequence, a link comprising afirst identifier for the respective media sequence and a secondidentifier for the respective identified advertising message; and inresponse to the query, returning a search result including the linkgenerated for each identified media sequence, such that when a link forone of the identified media sequences is selected in the search result,the selected media sequence is displayed in conjunction with theadvertising message identified for the selected media sequence, whereincode for performing the method is stored in the memory and executed bythe processor.
 2. The method of claim 1 wherein, each link added to thereturned search result for the identified media sequence containsinformation identifying both the identified media sequence and theadvertising message identified for it, as well as a server configured toretrieve the identified media sequence and identified advertisingmessage, concatenate the identified media sequence and identifiedadvertising message, and return a result of the concatenation.
 3. Themethod of claim 1 wherein, when one of the identified media sequences isselected in the search result, it is displayed proximate to a stillimage for the advertising message identified for the identified mediasequence that, when activated by a user, displays the advertisingmessage for the identified media sequence.
 4. The method of claim 1,wherein the first identifier in each generated link comprises one of anumerical identifier or a URL pointing to the respective media sequenceand the second identifier in each generated link comprises one of anumerical identifier or a URL pointing to the respective advertisingmessage.
 5. The method of claim 1 wherein, for each of the identifiedmedia sequences, the link added to the returned search result for theidentified media sequence causes a browser in which the search result isdisplayed to independently retrieve the identified media sequence andthe advertising message identified for it when followed.
 6. The methodof claim 5 wherein the link added to the returned search result for theidentified media sequence causes the browser in which the search resultis displayed to retrieve a metafile, that in turn causes the browser toindependently retrieve the identified media sequence and the advertisingmessage identified for it.
 7. The method of claim 6 wherein the linkadded to the returned search result for the identified media sequencecontains information identifying both the identified media sequence andthe advertising message identified for it, as well as identifying aserver configured to (1) retrieve the identified media sequence andidentified advertising message, (2) concatenate the identified mediasequence and identified advertising message, and (3) return the resultof the concatenation.
 8. The method of claim 1 wherein, for each of theidentified media sequences, the link added to the returned search resultfor the identified media sequence causes a browser in which the searchresult is displayed to retrieve a single file containing the identifiedmedia sequence and the advertising message identified for it whenfollowed.
 9. The method of claim 1 wherein each identified mediasequence has a type that is among a category of types, and wherein, foreach identified media sequence, an advertising message is identifiedthat has a type that is among the same category of types as the type ofthe identified media sequence.
 10. The method of claim 1 wherein eachidentified advertising message is a media sequence.
 11. The method ofclaim 1 wherein, for a particular identified media sequence, anadvertising message is identified in response to a request to retrievethe particular media sequence.
 12. The method of claim 1 whereinidentifying an advertising message for an identified media sequencefurther comprises identifying an advertising message in response to arequest to play the media sequence.
 13. The method of claim 1 wherein,when one of the identified media sequences is selected in the searchresult, the display of the identified media sequence is separated fromthe display of the advertising message identified for the identifiedmedia sequence by the display of a visual indication of a provider ofthe selected media sequence.
 14. A method in a computing system foraugmenting a plurality of media files with advertising, the computingsystem having a processor and memory, the method comprising: accessingmetadata associated with one of the media files, the metadata includingwords describing the media file; identifying for the media file anadvertising message that relates to the accessed metadata of the mediafile; and generating a link to the media file, such that when the mediafile is accessed, contents of the media file are presented inconjunction with the advertising message identified for the media file,the link comprising a first one of a numerical identifier or a URLpointing to the media file and a second one of a numerical identifier ora URL pointing to the identified advertising message, wherein code forperforming the method is stored in the memory and executed by theprocessor.
 15. The method of claim 14 wherein the media file is an audiofile.
 16. The method of claim 14 wherein the media file is a video file.17. A method in a computing system for generating a document intended toreference a designated media file, the computing system having aprocessor and memory, the method comprising: selecting an advertisingmedia file for association with the designated media file, based onmetadata associated with the designated media file; generating ametafile including a first identifier for the designated media file anda second identifier for the selected advertising media file, the firstand second identifiers comprising at least one of a URL or a numericalidentifier; and associating the generated metafile with a document,wherein code for performing the method is stored in the memory andexecuted by the processor.
 18. The method of claim 17 wherein thedocument is a web page.
 19. The method of claim 17 wherein the metafileis used by a computer system accessing the document to present both thedesignated media file and the selected advertising media file.
 20. Themethod of claim 17 wherein the generated metafile is bodily included inthe generated document.
 21. The method of claim 17 wherein the generatedmetafile is included in the generated document by reference.